home *** CD-ROM | disk | FTP | other *** search
/ Game.EXE 2001 January / execd1200.iso / Shareware / Blocks 3 / setup.exe / Source / BLOCKS3.H < prev    next >
Encoding:
C/C++ Source or Header  |  2000-10-07  |  6.5 KB  |  299 lines

  1. #define OLD_SOLID           1
  2. #define OLD_BOX             2
  3. #define OLD_TOKEN           3
  4. #define OLD_FALL            4
  5. #define OLD_AUDREY          9
  6. #define OLD_AN              8
  7. #define OLD_LASER_4WAY      56
  8. #define OLD_LASER_UP        57
  9. #define OLD_LASER_LEFT      58
  10. #define OLD_LASER_DOWN      59
  11. #define OLD_LASER_RIGHT     60
  12. #define OLD_MIRROR_MINUS    61
  13. #define OLD_MIRROR_PLUS     62
  14. #define OLD_MON1            6
  15. #define OLD_MON2            20
  16. #define OLD_BOMB            7
  17. #define OLD_BOMB2           10
  18. #define OLD_EXPLODE         11
  19. #define OLD_DOOR1           12
  20. #define OLD_DOOR2           13
  21. #define OLD_DOOR3           14
  22. #define OLD_SWITCH1         15
  23. #define OLD_SWITCH2         16
  24. #define OLD_SWITCH3         17
  25. #define OLD_DOOR_CLOSE      18
  26. #define OLD_BOX_SLIDE       19
  27. #define OLD_BOX_FALL        21
  28. #define OLD_REVERSE         22
  29.  
  30. #define SFX_CLICK                        0        /* SAMP */
  31. #define SFX_DOOR                         1        /* SAMP */
  32. #define SFX_EXPLODE                      2        /* SAMP */
  33. #define SFX_FALL                         3        /* SAMP */
  34. #define SFX_GETRED                       4        /* SAMP */
  35. #define SFX_INQUIRY                      5        /* SAMP */
  36. #define SFX_POPON                        6        /* SAMP */
  37. #define SFX_ROAR                         7        /* SAMP */
  38. #define SFX_WELLDONE                     8        /* SAMP */
  39. #define SFX_YEAH                         9        /* SAMP */
  40.  
  41. #define EDITOR_GAME     1
  42. #define PLAYER_GAME     2
  43.  
  44. #define RESERVE0        8
  45. #define FULL            32
  46. #define PUSH            64
  47. #define MONSTER         128
  48. #define PICKUP          256
  49. #define BLOWUP          512
  50. #define TELEPORT        1024
  51. #define LASER           2048
  52. #define MIRROR          4096
  53. #define BOMB            8192
  54. #define DOOR            16384
  55. #define SWITCH          32768
  56.  
  57. #define FALL            4
  58. #define FALL_PRIME      5
  59.  
  60. #define SOLID           48      /* 16, FULL */
  61.  
  62. #define RESERVE         52      /* 4, 16, FULL */
  63.  
  64. #define BOX             609     /* 1, PUSH, BLOWUP, FULL */
  65. #define TOKEN           257     /* 1, PICKUP */
  66. #define AUDREY          1000
  67. #define AN              1001
  68.  
  69. #define RED             1
  70. #define BLUE            2
  71. #define GREEN           4
  72.  
  73. #define RED_TELEPORT    1025    /* RED, TELEPORT */
  74. #define BLUE_TELEPORT   1026    /* BLUE, TELEPORT */
  75. #define GREEN_TELEPORT  1028    /* GREEN, TELEPORT */
  76.  
  77. #define OPEN            8
  78. #define CLOSE           16
  79.  
  80. #define RED_DOOR_OPEN   16393   /* RED, DOOR, OPEN */
  81. #define BLUE_DOOR_OPEN  16394
  82. #define GREEN_DOOR_OPEN 16396
  83.  
  84. #define RED_DOOR_CLOSE    16433 /* RED, DOOR, CLOSE, FULL */
  85. #define BLUE_DOOR_CLOSE   16434
  86. #define GREEN_DOOR_CLOSE  16436
  87.  
  88. #define RED_SWITCH      32769
  89. #define BLUE_SWITCH     32770
  90. #define GREEN_SWITCH    32772
  91.  
  92. #define UP              1
  93. #define RIGHT           2
  94. #define DOWN            4
  95. #define LEFT            8
  96.  
  97. #define LASER_UP        2145    /* LASER, UP, PUSH, FULL */
  98. #define LASER_DOWN      2148    /* LASER, DOWN, PUSH, FULL */
  99. #define LASER_LEFT      2152    /* LASER, LEFT, PUSH, FULL */
  100. #define LASER_RIGHT     2146    /* LASER, RIGHT, PUSH, FULL */
  101. #define LASER_4WAY      2159
  102.  
  103. #define MIRROR_PLUS     4161    /* 1, MIRROR, PUSH */
  104. #define MIRROR_MINUS    4162    /* 2, MIRROR, PUSH */
  105.  
  106. #define BOMB1           8801    /* 1, BOMB, PUSH, BLOWUP, FULL */
  107. #define BOMB2           8802    /* 2, BOMB, PUSH, BLOWUP, FULL */
  108. #define BOMB3           8804    /* 4, BOMB, PUSH, BLOWUP, FULL */
  109.  
  110. #define LASER_FILTER    40      /* 32, 8 */
  111.  
  112. #define STOP            0
  113. #define PATROL          1
  114. #define ALERT           2
  115. #define TRACK           4
  116.  
  117. #define MON0            128     /* 0, MONSTER */
  118. #define MON1            129     /* 1, MONSTER */
  119. #define MON2            130     /* 2, MONSTER */
  120. #define MON3            132     /* 4, MONSTER */
  121.  
  122. #define SUNNY           1
  123. #define CASTLE          2
  124. #define ROCKY           3
  125. #define SNOWY           4
  126.  
  127. JGMOD *music;
  128. DATAFILE *fonts, *sfx;
  129.  
  130. char login[13];
  131.  
  132. BITMAP *gfx, *temp, *back;
  133. BITMAP *ply_pic[2][12];
  134. BITMAP *mon_pic[5][12];
  135.  
  136. BITMAP *title_gfx;
  137. PALLETE title_pallete;
  138.  
  139. BITMAP *box_pic, *bomb_pic[3];
  140. BITMAP *token_pic;
  141. BITMAP *teleport_pic[3];
  142. BITMAP *blank;
  143.  
  144. BITMAP *laser_pic[5];
  145. BITMAP *beam_pic[7];
  146. BITMAP *mirror_pic[2];
  147.  
  148. BITMAP *explode_pic[8];
  149.  
  150. BITMAP *filter_pic;
  151.  
  152. BITMAP *door_pic[3];
  153. BITMAP *switches_pic[3];
  154.  
  155. BITMAP *editor_icons;
  156. BITMAP *fall_pic;
  157.  
  158. BITMAP *dark[5];
  159.  
  160. PALLETE pallete;
  161.  
  162. COLOR_MAP trans_table;
  163. COLOR_MAP light_table;
  164.  
  165. int time_count;
  166. int game_type;
  167. int game_exit;
  168. int lev;
  169. int mus_vol, sfx_vol, cd_vol;
  170.  
  171. int map[20][15][2];
  172. int maps[20][15][2][101];
  173. int map_motif[100];
  174. int map2[20][15];
  175. int map_laser[20][15][2];
  176. int map_door[20][15][2];
  177. int map_done[100];
  178. int no_ply;
  179. int mod_track, mod_last;
  180. int motif;
  181.  
  182. char map_save[20];
  183.  
  184. typedef struct PLY_DEF
  185. {
  186.  int x, y, z, dx, dy, dz;
  187.  int frame, dir;
  188. } PLY_DEF;
  189.  
  190. PLY_DEF ply[2];
  191.  
  192. typedef struct DIRTY_DEF
  193. {
  194.  int x, y, z, w, h;
  195.  BITMAP *pic;
  196. } DIRTY_DEF;
  197.  
  198. DIRTY_DEF dirty[300], dirty_sort[300];
  199. int dirty_count;
  200.  
  201. typedef struct BOX_DEF
  202. {
  203.  int x, y, z, dx, dy, dz, dir, type;
  204.  BITMAP *pic;
  205. } BOX_DEF;
  206.  
  207. BOX_DEF box[468];
  208. int box_count;
  209.  
  210. typedef struct EXPLODE_DEF
  211. {
  212.  int x, y, z, frame, type;
  213. } EXPLODE_DEF;
  214.  
  215. EXPLODE_DEF explode[468];
  216.  
  217. int explode_count;
  218.  
  219. typedef struct MENU_ITEM
  220. {
  221.  char name[50];
  222. } MENU_ITEM;
  223.  
  224. typedef struct MENU_DEF
  225. {
  226.  int x, y, w, h, n;
  227.  MENU_ITEM item[10];
  228. } MENU_DEF;
  229.  
  230. MENU_DEF menu[4], menu_title[4];
  231.  
  232. typedef struct DIR_DEF
  233. {
  234.  char name[50];
  235. } DIR_DEF;
  236.  
  237. DIR_DEF dir[500], mod[50];
  238.  
  239. typedef struct MON_DEF
  240. {
  241.  int x, y, z, dx, dy, dz;
  242.  int dir, state, type, frame;
  243.  int speed, count;
  244. } MON_DEF;
  245.  
  246. MON_DEF mon[100];
  247.  
  248. int mon_count;
  249.  
  250. typedef struct SWITCH_DEF
  251. {
  252.  int x, y, z, c;
  253. } SWITCH_DEF;
  254.  
  255. SWITCH_DEF switches[60];
  256.  
  257. typedef struct DOOR_DEF
  258. {
  259.  int x, y, z, c, state;
  260. } DOOR_DEF;
  261.  
  262. DOOR_DEF door[60];
  263.  
  264. int switches_count;
  265. int door_count;
  266.  
  267. typedef struct SOUND_DEF
  268. {
  269.  int x, s;
  270. } SOUND_DEF;
  271.  
  272. SOUND_DEF fx[40];
  273.  
  274. int fx_count;
  275.  
  276. typedef struct UNDO_DEF
  277. {
  278.  PLY_DEF ply[2];
  279.  BOX_DEF box[468];
  280.  EXPLODE_DEF explode[468];
  281.  MON_DEF mon[100];
  282.  DOOR_DEF door[60];
  283.  SWITCH_DEF switches[60];
  284.  
  285.  int map[20][15][2];
  286.  int map_laser[20][15][2];
  287.  int map_door[20][15][2];
  288.  
  289.  int box_count;
  290.  int explode_count;
  291.  int mon_count;
  292.  int door_count;
  293.  int switches_count;
  294. } UNDO_DEF;
  295.  
  296. UNDO_DEF undo[20];
  297. int undo_count;
  298.  
  299.